/*
 * Edge.hpp
 *
 *  Created on: 16/11/2011
 *      Author: Aeradon
 */

#ifndef EDGE_HPP_
#define EDGE_HPP_

#include "vertex.hpp"

class Vertex;
class SymEdge;

class Edge
{
public: //typedefs
	Edge(Vertex* v1, Vertex* v2);

	Vertex * getOtherEnd(Vertex * v);

	void resetEdge(Vertex* v1, Vertex* v2);

	virtual ~Edge();

	Vertex *v1, *v2;

	SymEdge* outEdge;

	unsigned int vecIndex;

	bool isConstrained;
};

#endif /* EDGE_HPP_ */
